/* 
 * Author: vdaras
 */


#ifndef COLOR_H
#define COLOR_H

#include <SDL/SDL.h>

namespace sdl
{

class Surface;

class Color
{

private:
    Uint8 m_r, m_g, m_b;

public:
    Color(Uint8 r = 255, Uint8 g = 255, Uint8 b = 255);
    ~Color();

    Uint8 GetR() const;
    Uint8 GetG() const;
    Uint8 GetB() const;

    Uint32 MapRGB(sdl::Surface &surface) const;
    Uint32 MapRGBA(sdl::Surface &surface, Uint32 alpha) const;
};


namespace Colors
{

const Color RED(255, 0 ,0);
const Color GREEN(0, 255, 0);
const Color BLUE(0, 0, 255);
const Color GRAY(105, 105, 105);
const Color WHITE(255, 255, 255);
const Color BLACK(0, 0, 0);

};

};

#endif	/* COLOR_H */

